// build.rs

use libbpf_cargo::SkeletonBuilder;
use std::path::Path;

const EBPF_SRC: &str = "src/prefetcher.bpf.c";

fn main() {
    // ... 文件存在性检查的代码保持不变 ...
    if !Path::new(EBPF_SRC).exists() {
        panic!("eBPF source file not found at: {}", EBPF_SRC);
    }

    // --- 这是需要修改的地方 ---
    SkeletonBuilder::new()
        .source(EBPF_SRC)
        // +++ 将 .clang_include() 替换为 .clang_args() +++
        .clang_args(&["-I", "src"]) // 正确的 API
        .name("prefetcher")
        .build()
        .expect("eBPF skeleton failed to build");

    // ... rerun-if-changed 的代码保持不变 ...
    println!("cargo:rerun-if-changed={}", EBPF_SRC);
    println!("cargo:rerun-if-changed=src/vmlinux.h");
}